package com.gokzzz.service;

import com.gokzzz.entity.Article;
import com.gokzzz.mq.index.ArticleMqIndexMessage;
import com.gokzzz.response.PageData;

import java.io.IOException;

/**
 * @author ganfujia
 * @date 2022/5/20 11:08
 */
public interface EsService {
    /**
     * 分页查询
     *
     * @param current 当前页
     * @param size    每页数量
     * @param q       查询关键字
     * @return 分页数据
     * @throws IOException IO异常
     */
    PageData<Article> page(Long current, Long size, String q) throws IOException;

    /**
     * Mysql数据导入ES
     */
    void initData();

    /**
     * 更新
     *
     * @param message 消息
     */
    void createOrUpdateIndex(ArticleMqIndexMessage message);

    /**
     * 删除
     * @param message 消息
     */
    void removeIndex(ArticleMqIndexMessage message);
}
